Mergeable Dictionaries

نویسندگان

  • John Iacono
  • Özgür Özkan
چکیده

A data structure is presented for the Mergeable Dictionary abstract data type, which supports the following operations on a collection of disjoint sets of totally ordered data: PredecessorSearch, Split and Merge. While Predecessor-Search and Split work in the normal way, the novel operation is Merge. While in a typical mergeable dictionary (e.g. 2-4 Trees), the Merge operation can only be performed on sets that span disjoint intervals in keyspace, the structure here has no such limitation, and permits the merging of arbitrarily interleaved sets. Tarjan and Brown present a data structure [4] which can handle arbitrary Merge operations in O(log n) amortized time per operation if the set of operations is restricted to exclude the Split operation. In the presence of Split operations, the amortized time complexity of their structure becomes Ω(n). A data structure which supports both Split and Merge operations in O(log n) amortized time per operation was given by Farach and Thorup [6]. In contrast, our data structure supports all operations, including Split and Merge, in O(log n) amortized time, thus showing that interleaved Merge operations can be supported at no additional cost vis-à-vis disjoint Merge operations. 0 ar X iv :1 00 2. 42 48 v1 [ cs .D S] 2 3 Fe b 20 10

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Simple Mergeable Dictionary

A mergeable dictionary is a data structure storing a dynamic subset S of a totally ordered set U and supporting predecessor searches in S. Apart from insertions and deletions to S, we can both merge two arbitrarily interleaved dictionaries and split a given dictionary around some pivot x ∈ U . We present an implementation of a mergeable dictionary matching the optimal amortized logarithmic boun...

متن کامل

Biased Leftist Trees and Modi ed Skip Lists

We propose the weight biased leftist tree as an alternative to traditional leftist trees CRAN for the representation of mergeable priority queues A modi ed version of skip lists PUGH that uses xed size nodes is also proposed Experimental results show our modi ed skip list structure is faster than the original skip list structure for the representation of dictionaries Experimental results compar...

متن کامل

Checking Mergeable Priority Queues

We present an eecient algorithm which can check the answers given by the fundamental abstract data types priority queues and mergeable priority queues. This is the rst linear-time checker for mergeable priority queues. These abstract data types are widely used in routing, scheduling, simulation, computational geometry and many other algorithmic domains. We have implemented our answer checker an...

متن کامل

A Mergeable Interval Map

This article describes an efficient persistent mergeable data structure for mapping intervals to values. We call this data structure rangemap. We provide an example of application where the need for such a data structure arises (abstract interpretation of programs with pointer casts). We detail different solutions we have considered and dismissed before reaching the solution of rangemaps. We sh...

متن کامل

A Mergeable Summaries

We study the mergeability of data summaries. Informally speaking, mergeability requires that, given two summaries on two data sets, there is a way to merge the two summaries into a single summary on the two data sets combined together, while preserving the error and size guarantees. This property means that the summaries can be merged in a way akin to other algebraic operators such as sum and m...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010